<?php
#BEGIN_LICENSE
#-------------------------------------------------------------------------
# Module: CGBlog (c) 2010 by Robert Campbell 
#         (calguy1000@cmsmadesimple.org)
#  An addon module for CMS Made Simple to allow creation, management of
#  and display of blog articles.
# 
#-------------------------------------------------------------------------
# CMS - CMS Made Simple is (c) 2005 by Ted Kulp (wishy@cmsmadesimple.org)
# This project's homepage is: http://www.cmsmadesimple.org
#
#-------------------------------------------------------------------------
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# However, as a special exception to the GPL, this software is distributed
# as an addon module to CMS Made Simple.  You may not use this software
# in any Non GPL version of CMS Made simple, or in any version of CMS
# Made simple that does not indicate clearly and obviously in its admin 
# section that the site was built with CMS Made simple.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
# Or read it online: http://www.gnu.org/licenses/licenses.html#GPL
#
#-------------------------------------------------------------------------
#END_LICENSE
if (!isset($gCms)) exit;
$thetemplate = $this->GetPreference('current_browsecat_template');
if( isset($params['browsecattemplate']) )
  {
    $thetemplate = trim($params['browsecattemplate']);
    unset($params['browsecattemplate']);
  }
$tmp = $this->GetPreference('default_summarypage',-1);
$summarypage = $returnid;
if( $tmp != -1 )
  {
    $summarypage = $tmp;
  }
if( isset($params['summarypage']) )
  {
    $tmp = $this->resolve_alias_or_id($params['summarypage']);
    if( $tmp ) $summarypage = $tmp;
    unset($params['summarypage']);
  }

$query = 'SELECT a.*,count(b.blog_id) as count 
            FROM '.cms_db_prefix().'module_cgblog_categories a 
            LEFT JOIN '.cms_db_prefix().'module_cgblog_blog_categories b 
              ON a.id = b.category_id 
            LEFT JOIN '.cms_db_prefix().'module_cgblog c
              ON c.cgblog_id = b.blog_id
           WHERE c.status = \'published\'';
if( !isset($params['showall']) || $params['showall'] = 0 )
  {
    $zerotime = $db->DBTimeStamp(1);
    $now = $db->DBTimeStamp(time());
    $query .= ' AND (('.$db->IfNull('end_time',$zerotime)." = $zerotime) OR (end_time > $now))";
  }
$query .= ' GROUP BY a.id
          ORDER BY sort_order';
$items = $db->GetArray($query);
if( !is_array( $items ) ) return;

for( $i = 0; $i < count($items); $i++ )
  {
    $one =& $items[$i];
    $params['category_id'] = $one['id'];
    $prettyurl = '';
    if( !isset($params['uglyurls']) || !$params['uglyurls'] )
      {
	if( $this->GetPreference('default_summarypage',-1) == -1 )
	  {
	    $fmt = '%s/category/%d/%d/%s';
	    $prettyurl = sprintf($fmt,
				 $this->GetPreference('urlprefix','cgblog'),
				 $one['id'],
				 $summarypage,
				 munge_string_to_url($one['name']));
	  }
	else
	  {
	    $fmt = '%s/category/%d/%s';
	    $prettyurl = sprintf($fmt,
				 $this->GetPreference('urlprefix','cgblog'),
				 $one['id'],
				 munge_string_to_url($one['name']));
	  }
      }
    $one['url'] = $this->CreateURL($id,'default',$summarypage,$params,false,$prettyurl);
  }

#Display template
$smarty->assign('categories',$items);

$thetemplate = 'browsecat'.$thetemplate;
echo $this->ProcessTemplateFromDatabase($thetemplate);


?>
